package com.ruoyi.user.utils;


import com.alibaba.fastjson.JSON;
import org.apache.http.HttpResponse;
import org.apache.http.util.EntityUtils;

import java.util.HashMap;
import java.util.Map;

public class IdCardUtil {


	public static String checkIdNo(String name,String idNo) {
		String host = "https://idenauthen.market.alicloudapi.com";
		String path = "/idenAuthentication";
		String method = "POST";
		String appcode = "57cc4ad7cebe413b8ffaabdbd42c9af9";
		Map<String, String> headers = new HashMap<String, String>();
		//最后在header中的格式(中间是英文空格)为Authorization:APPCODE 83359fd73fe94948385f570e3c139105
		headers.put("Authorization", "APPCODE " + appcode);
		//根据API的要求，定义相对应的Content-Type
		headers.put("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
		Map<String, String> querys = new HashMap<String, String>();
		Map<String, String> bodys = new HashMap<String, String>();
		bodys.put("idNo",idNo);
		bodys.put("name", name);
		String idCart = null;

		try {
			/**
			 * 重要提示如下:
			 * HttpUtils请从
			 * https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/src/main/java/com/aliyun/api/gateway/demo/util/HttpUtils.java
			 * 下载
			 *
			 * 相应的依赖请参照
			 * https://github.com/aliyun/api-gateway-demo-sign-java/blob/master/pom.xml
			 */
			HttpResponse response = HttpUtils.doPost(host, path, method, headers, querys, bodys);
			System.out.println(response.toString());
			//{"name":"张桦阳","idNo":"1457118123","respMessage":"身份证号格式错误，请检查后重新输入","respCode":"0004"}
			//{"name":"张桦阳","idNo":"142625200305190757","respMessage":"身份证信息匹配","respCode":"0000","province":"山西省","city":"临汾地区","county":"洪洞县","birthday":"20030519","sex":"M","age":"20"}
			//获取response的body
			idCart = EntityUtils.toString(response.getEntity());

		} catch (Exception e) {
			e.printStackTrace();
		}
		Map map = JSON.parseObject(idCart, Map.class);
		String respMessage = (String) map.get("respMessage");
		String respCode = (String) map.get("respCode");
		if (respCode.equals("0000")){
			return "0000";
		}else{
			return respMessage;
		}
	}
}